ديف أوبس

تثبيت Graylog وتحليل السجلات

تثبيت Graylog على أوبنتو واستخدامه لتحليل السجلات (Logs)

الكلمات المفتاحية: Graylog, أوبنتو, تحليل السجلات, إدارة السجلات, ELK, Log Management, Logging System, Elasticsearch, MongoDB, Open Source Logging, SIEM


تُعَدّ أنظمة تحليل السجلات (Logs) أحد الركائز الأساسية في تأمين الأنظمة ومراقبة أدائها وتحليل الحوادث في بيئات العمل الحديثة. من بين أشهر هذه الأنظمة وأكثرها كفاءة هو نظام Graylog، الذي يوفّر واجهة مرنة وسهلة الاستخدام لتجميع وتحليل السجلات في الوقت الحقيقي، مما يساعد مسؤولي الأنظمة وأمن المعلومات على رصد التغيرات والتحذير من الأنشطة غير الاعتيادية. يُعتمد Graylog بشكل واسع في بيئات المؤسسات لما يقدمه من خصائص متميزة مثل البحث المتقدم، التصفية، التنبيهات، التكامل مع أدوات أخرى، وتوسعة قابليته للإدارة والتحليل.

في هذا المقال الموسع، سيتم استعراض كيفية تثبيت Graylog على توزيعة أوبنتو Ubuntu، وتهيئة بيئة العمل الخاصة به، مع شرح مفصل لكيفية استخدامه لتحليل السجلات بكفاءة. سنتناول المكونات الأساسية التي يحتاجها النظام للعمل، والخطوات التفصيلية لتثبيته، وأخيرًا كيفية إرسال السجلات إليه وتحليلها بفعالية.


نظرة عامة على Graylog

Graylog هو منصة مفتوحة المصدر لإدارة وتحليل السجلات، تم تصميمه لتخزين كميات ضخمة من بيانات السجلات القادمة من مصادر مختلفة مثل الخوادم، الأجهزة الشبكية، تطبيقات الويب، قواعد البيانات، وغيرها. يعتمد Graylog في بنيته التحتية على عدد من الأدوات الأخرى:

  • MongoDB: قاعدة بيانات NoSQL تستخدم لتخزين البيانات الوصفية والتكوينات.

  • Elasticsearch: محرك بحث وتحليل يستعمل لتخزين واسترجاع بيانات السجلات.

  • Graylog Server: المعالج الرئيسي للبيانات.

  • Web Interface: لوحة تحكم رسومية لتصفح وتحليل السجلات.


متطلبات النظام لتثبيت Graylog على أوبنتو

قبل بدء عملية التثبيت، يجب التأكد من توفر المتطلبات التالية:

  • نظام تشغيل Ubuntu 20.04 LTS أو إصدار أحدث.

  • معالج رباعي النواة على الأقل.

  • ذاكرة RAM لا تقل عن 4 غيغابايت (موصى به 8 غيغابايت أو أكثر).

  • مساحة تخزين كافية (اعتمادًا على حجم السجلات المتوقعة).

  • اتصال بالإنترنت لتنزيل الحزم والتحديثات.

  • صلاحيات Root أو حساب مستخدم مع امتيازات sudo.


خطوات تثبيت Graylog على أوبنتو

1. تحديث النظام وتثبيت الحزم الأساسية

bash
sudo apt update && sudo apt upgrade -y sudo apt install apt-transport-https openjdk-11-jre-headless uuid-runtime pwgen curl gnupg2 -y

ملاحظة: يستخدم Graylog إصدار Java 11. لذلك نستخدم JRE المناسب.


2. تثبيت MongoDB

MongoDB ضروري لتخزين بيانات التكوين الخاصة بـ Graylog.

bash
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list sudo apt update sudo apt install -y mongodb-org sudo systemctl start mongod sudo systemctl enable mongod

3. تثبيت Elasticsearch

يُستخدم Elasticsearch لتخزين وتحليل السجلات:

bash
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list sudo apt update sudo apt install -y elasticsearch

قم بتعديل ملف التكوين:

bash
sudo nano /etc/elasticsearch/elasticsearch.yml

أضف أو عدّل القيم التالية:

yaml
cluster.name: graylog action.auto_create_index: false

بعد ذلك:

bash
sudo systemctl daemon-reexec sudo systemctl enable elasticsearch sudo systemctl start elasticsearch

4. تثبيت Graylog

أضف المستودع الرسمي:

bash
wget https://packages.graylog2.org/repo/packages/graylog-5.1-repository_latest.deb sudo dpkg -i graylog-5.1-repository_latest.deb sudo apt update sudo apt install graylog-server -y

5. إعداد كلمة مرور المسؤول وتكوين Graylog

استخدم الأمر التالي لإنشاء كلمة مرور مشفرة:

bash
pwgen -N 1 -s 96

ثم:

bash
echo -n yourpassword | sha256sum

افتح ملف التكوين:

bash
sudo nano /etc/graylog/server/server.conf

وحرر القيم التالية:

ini
password_secret = <ناتج أمر pwgen> root_password_sha2 = <ناتج أمر sha256sum> root_username = admin root_email = [email protected] http_bind_address = 0.0.0.0:9000

ثم:

bash
sudo systemctl enable graylog-server sudo systemctl start graylog-server

بعد ثوانٍ، ستتمكن من الوصول إلى واجهة Graylog من خلال المتصفح عبر:

cpp
http://:9000

إرسال السجلات إلى Graylog

للاستفادة من Graylog، يجب إعداد مدخلات (Inputs) لتلقي السجلات من الأنظمة الأخرى. يدعم Graylog العديد من البروتوكولات:

  • Syslog (UDP/TCP)

  • GELF (Graylog Extended Log Format)

  • Beats (مثل Filebeat)

  • HTTP JSON Inputs

مثال: استخدام Filebeat لإرسال السجلات

  1. تثبيت Filebeat:

bash
sudo apt install filebeat -y
  1. تعديل الإعدادات:

bash
sudo nano /etc/filebeat/filebeat.yml

أضف التالي في قسم output:

yaml
output.logstash: hosts: ["graylog_ip:5044"]
  1. تشغيل Filebeat:

bash
sudo systemctl enable filebeat sudo systemctl start filebeat

وفي Graylog، قم بإنشاء input من نوع Beats على المنفذ 5044.


تحليل السجلات باستخدام واجهة Graylog

بمجرد استلام السجلات، يمكن البدء في استعراضها من خلال الواجهة الرسومية. يتميز Graylog بعدة وظائف تحليلية:

1. البحث والاستعلامات

يتيح Graylog كتابة استعلامات باستخدام لغة مشابهة لـ Lucene. يمكن تصفية السجلات حسب المصدر، المستوى، الرسالة، الوقت، وغيرها.

2. إنشاء لوحات تحكم (Dashboards)

من خلال تحديد الرسوم البيانية والمعايير، يمكن إعداد لوحات لعرض مؤشرات الأداء أو تنبيهات الأمان في الزمن الحقيقي.

3. إعداد التنبيهات

عبر Graylog يمكن إنشاء تنبيهات ترسل إشعارات عبر البريد الإلكتروني، Slack أو HTTP webhook عند تحقق شروط محددة مثل زيادة عدد الأخطاء أو ظهور أنماط مشبوهة.


مقارنة Graylog مع أنظمة أخرى (مثل ELK Stack)

المعيار Graylog ELK Stack
واجهة المستخدم بسيطة وسهلة الاستخدام معقدة نسبيًا
الأداء مع البيانات الكبيرة جيد جدًا مع التكوين الصحيح ممتاز لكنه يستهلك موارد أكبر
دعم التنبيهات متقدم ومبني ضمن النظام يتطلب تثبيت Watcher أو أدوات إضافية
إدارة التكوين مركزي وسهل من خلال الواجهة غالبًا يعتمد على ملفات YAML
التثبيت أبسط نسبيًا أكثر تعقيدًا

استخدامات متقدمة في Graylog

  • Pipeline Processing: لتعديل محتوى السجلات قبل تخزينها.

  • Extractors: لاستخراج البيانات من السجلات وتحويلها إلى حقول قابلة للتحليل.

  • Lookup Tables: لتغذية الحقول من قواعد بيانات خارجية أو ملفات.


الحماية وتقييد الوصول

من الأفضل تأمين الوصول إلى واجهة Graylog باستخدام HTTPS عبر Nginx أو Apache كمُوجّه عكسي (Reverse Proxy). كما يجب إنشاء أدوار وصلاحيات تحدد من يمكنه عرض السجلات أو تعديل التكوينات.


النسخ الاحتياطي واستعادة البيانات

ينبغي بشكل دوري عمل نسخ احتياطية من:

  • ملفات تكوين Graylog

  • قواعد بيانات MongoDB

  • مؤشرات Elasticsearch

يمكن استخدام أدوات مثل mongodump و elasticdump للنسخ الاحتياطي.


الخلاصة

يمثل Graylog حلاً موثوقًا ومفتوح المصدر لتحليل السجلات في البيئات الحديثة، بفضل تكامله مع أدوات قوية مثل Elasticsearch و MongoDB، ودعمه لبروتوكولات متعددة لتجميع السجلات، وواجهته الرسومية الفعالة. يتيح لمتخصصي تقنية المعلومات مراقبة الأنظمة، تحليل الأداء، واكتشاف المشكلات الأمنية بسرعة وكفاءة، مما يجعله أداة أساسية في مراكز البيانات والمؤسسات الرقمية.


المراجع:

  1. Official Graylog Documentation – https://docs.graylog.org

  2. DigitalOcean Guide: How To Install Graylog on Ubuntu